import request from '@/utils/request'

const restfulBasePath = '/role'

/**
 * 分页获取角色信息
 * @param data
 * @returns {AxiosPromise}
 */
export function getRoles(data) {
  return request({
    url: restfulBasePath + '/list',
    method: 'POST',
    data: data
  })
}

/**
 * 保存角色信息
 * @param data
 * @returns {AxiosPromise}
 */
export function saveRole(data) {
  return request({
    url: restfulBasePath + '/save',
    method: 'POST',
    data: data
  })
}

/**
 * 根据角色编号删除角色信息
 * @param id
 * @returns {AxiosPromise}
 */
export function deleteRole(id) {
  return request({
    url: restfulBasePath + '/delete/' + id,
    method: 'POST'
  })
}

/**
 * 根据角色编号获取角色信息
 * @param id 角色编号
 * @returns {AxiosPromise}
 */
export function getRoleById(id) {
  return request({
    url: restfulBasePath + '/get/' + id,
    method: 'GET'
  })
}

/**
 * 获取当前登录用户所可分配的菜单权限以及拥有的菜单权限
 * @param roleId
 * @returns {AxiosPromise}
 */
export function getAssignPermissionsTree(roleId) {
  return request({
    url: restfulBasePath + '/getAssignPermissionsTree/' + roleId,
    method: 'GET'
  })
}

/**
 * 保存角色权限信息
 * @param data
 * @returns {*}
 */
export function saveRolePermissions(data) {
  return request({
    url: restfulBasePath + '/saveRolePermissions/',
    method: 'POST',
    data: data
  })
}

